package Clases;

import java.util.ArrayList;
import java.util.List;

import Complementos.TiposDeDatos;
import android.graphics.Bitmap;
import android.os.Parcel;
import android.os.Parcelable;

public class Contacto implements Parcelable{

	private String id;
	private Bitmap foto;
	private String nombre;
	private String apellido;
	private List<Dato> datos;
	private String email;
	
	public Contacto(){
	}
	
	public void setId(String id){
		this.id = id;
	}

	public void setFoto(Bitmap foto){
		this.foto = foto;
	}

	public void setNombre(String nombre){
		this.nombre = nombre;
	}

	public void setApellido(String apellido){
		this.apellido = apellido;
	}

	public void setDatos(List<Dato> datos){
		this.datos = datos;
	}

	public void setEmail(String email){
		this.email = email;
	}

	public String getId(){
		return id;
	}

	public Bitmap getFoto(){
		return foto;
	}

	public String getNombre(){
		return nombre;
	}

	public String getApellido(){
		return apellido;
	}

	public List<Dato> getDatos(){
		return datos;
	}

	public String getEmail(){
		return email;
	}
	
	public List<Dato> getNumerosCelular(){
		List<Dato> resultado = new ArrayList<Dato>();
		for (Dato dato : this.datos) {
			if(dato.getTipoDeDato() == TiposDeDatos.MOBILE){
				resultado.add(dato);
			}
		}
		return resultado;
	}

	public List<Dato> getNumerosTrabajo(){
		List<Dato> resultado = new ArrayList<Dato>();
		for (Dato dato : this.datos) {
			if(dato.getTipoDeDato() == TiposDeDatos.WORK){
				resultado.add(dato);
			}
		}
		return resultado;
	}
	
	public List<Dato> getNumerosCasa(){
		List<Dato> resultado = new ArrayList<Dato>();
		for (Dato dato : this.datos) {
			if(dato.getTipoDeDato() == TiposDeDatos.HOME){
				resultado.add(dato);
			}
		}
		return resultado;
	}
	
	public List<Dato> getNumerosHablar(){
		List<Dato> resultado = new ArrayList<Dato>();
		for (Dato dato : this.datos) {
			if(dato.getTipoDeDato() == TiposDeDatos.MOBILE || dato.getTipoDeDato() == TiposDeDatos.HOME || dato.getTipoDeDato() == TiposDeDatos.WORK){
				resultado.add(dato);
			}
		}
		return resultado;
	}

	@Override
	public int describeContents() {
		// TODO Auto-generated method stub
		return 0;
	}

	@Override
	public void writeToParcel(Parcel dest, int flags) {
		// TODO Auto-generated method stub
		
	}
}
